package com.tedu.day02.oop.test;

/**
 *              普通类  抽象类  接口类
 *                      【关系】                   【特点】
 *       类与类            继承               只能继承、可多层继承
 *       类与抽象类         继承               可以单继承，不可以多继承
 *       抽象类与抽象类      继承               只能单继承，可多层继承
 *       类与接口           实现               可以单继承，也可以多实现
 *                                           并且继承同时实现多个继承
 *       接口与接口         继承               可以单继承，可以多继承
 */
/*作业1：抽象类与接口区别和关系？简答*/
/**
 * 1.抽象类可以有构造方法，接口中不能有构造方法
 * 2.抽象类中可以有普通成员变量，接口中没有普通成员变量
 * 3.抽象类中可以包含静态方法，接口中不能包含静态方法
 * 4.一个类可以实现多个接口，但只能继承一个抽象类
 * 5.接口可以被多重实现，抽象类只能被单一继承
 * 6.如果抽象类实现接口，则可以把接口中方法映射到抽象类中
 *   作为抽象方法而不必实现，而在抽象类的子类中实现接口中的方法
 */
//5.接口与接口   继承    可以单继承，可以多继承
interface Loo{}   interface Foo{}
interface Voo extends Loo,Foo{}
//4.类与接口：实现    ---可以单继承，也可以多实现
/*interface Loo{}   interface Foo{}
class Joo{}
class Voo extends Joo implements Loo,Foo{}*/

//3.抽象类与抽象类：继承-只能单继承，可多层继承
// abstract class Loo{}
// abstract class Voo extends Loo{}
// abstract class Uoo extends Voo{}
//2.类与抽象类：继承 --可以单继承，不可以多继承
// abstract class Uoo{}   abstract class Voo{}
//class Loo extends Uoo,Voo{}


//1.类与类：继承---单继承
 /* class Uoo{}
class Loo extends Uoo{}
class voo extends Uoo{}*/